Programmieren

Ingenieurinformatik Teil 1, Wintersemester 2026/27

David Straub

Programmieren – D. Straub

Ziel dieser Veranstaltung

Sie lernen, Programme zu schreiben, die

  • Ihnen im Studium und Beruf Arbeit abnehmen
  • andere (und Ihr zukünftiges Ich) verstehen und weiterverwenden können

Außerdem lernen Sie, Code zu prüfen, den Sie nicht selbst geschrieben haben.

Programmieren – D. Straub

Warum programmieren lernen?

Moderne Ingenieurarbeit läuft zunehmend durch Code.

  • Simulation: Systeme am Computer testen und optimieren, bevor sie existieren
  • Messdaten: vom Windkanal bis zum Prüfstand – ausgewertet wird mit Software
  • Zunehmend auch der Entwurf selbst: parametrische CAD-Modelle, automatisierte Variantenstudien
  • Und konkret für Sie: Numerik im 2. Semester, Praktika, Projektarbeit, Bachelorarbeit
Programmieren – D. Straub

Demo: Was Sie am Ende des Semesters können

Messwerte auswerten und darstellen – in 10 Zeilen:

import matplotlib.pyplot as plt

stunden = [8, 9, 10, 11, 12, 13, 14, 15]
temperaturen = [18.2, 19.1, 21.4, 24.0, 26.3, 27.1, 25.8, 22.5]

maximum = max(temperaturen)
print(f"Höchstwert: {maximum} °C")

plt.plot(stunden, temperaturen, "b-o")
plt.xlabel("Uhrzeit")
plt.ylabel("Temperatur in °C")
plt.grid(True)
plt.show()
Programmieren – D. Straub

Das war übrigens: Python

print("Hallo Welt!")

Zum Vergleich – dasselbe in Java:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hallo Welt!");
    }
}
Programmieren – D. Straub

Warum Python?

Die einfachste der weitverbreiteten Programmiersprachen – und der Standard für genau das, was im Ingenieuralltag gebraucht wird:

  • Simulation und wissenschaftliches Rechnen
  • Datenanalyse und Visualisierung
  • KI und Machine Learning

Quelloffen und kostenlos.

Programmieren – D. Straub

Und die KI-Frage: Löst ChatGPT das nicht alles?

Probieren wir es aus – mit einer echten Klausuraufgabe:

https://kuepper.userweb.mwn.de/informatik/python-ws2024.pdf

Programmieren – D. Straub

Finden Sie den Fehler

Eine Batteriezelle wird in 0,1-Schritten geladen, bis der Ladezustand genau 1,0 erreicht ist:

ladezustand = 0.0
while ladezustand != 1.0:
    ladezustand = ladezustand + 0.1
print("Batterie voll!")

Zehnmal 0,1 ist 1,0. Sieht gut aus. Läuft ohne Fehlermeldung. Würden Sie es abnehmen?

Programmieren – D. Straub

Warum Sie trotzdem fliegen lernen

Autopiloten fliegen präziser als Menschen.

Trotzdem beginnt jede Pilotenausbildung mit manuellem Fliegen – denn wer die Automation überwachen, ihre Fehler erkennen und die Verantwortung tragen soll, muss es selbst können.

Beim Programmieren gilt dasselbe:

  • Spezifizieren: der KI präzise sagen, was gebraucht wird
  • Prüfen: erkennen, ob das Ergebnis stimmt
  • Verantworten: am Ende unterschreibt der Mensch
Programmieren – D. Straub

KI beim Lernen: Es kommt darauf an, wie

Studie (Anthropic, 2026): Erfahrene Python-Programmierende lernen eine neue Bibliothek, die Hälfte mit KI-Assistent

  • Mit KI: etwas schneller fertig, im Verständnistest danach 50 % statt 67 %
  • Wer sich von der KI erklären ließ, schnitt gut ab – wer sich nur Code liefern ließ, schlecht

Ihre Wahl: KI als Tutor, der erklärt

Quelle: https://www.anthropic.com/research/AI-assistance-coding-skills

Programmieren – D. Straub

Spielregeln

  • Im Praktikum: ohne KI-Unterstützung programmieren – Fehler selbst zu finden ist der Kern der Sache
  • Außerhalb: KI-Tools ausdrücklich erwünscht – zum Erklären, Üben, Vertiefen
  • Suchen Sie sich Programmierprojekte: Open Source, Smart Home, KI-Automatisierung, …
Programmieren – D. Straub

Formelles

  • Modul Ingenieurinformatik (L1170)
    • 1. Semester: Programmierung (L1171) <--
    • 2. Semester: Numerik für Ingenieure (L1172)
  • 2 SWS Seminaristischer Unterricht + 1 SWS Praktikum (90 Min. alle 2 Wochen)
  • Prüfung: 60 Minuten schriftlich, Teil 1 zählt 60%
    • eigene Unterlagen erlaubt, keine elektronischen Geräte
Programmieren – D. Straub

Semesterfahrplan

Wochen Was passiert
Heute Einführung + Ihr erstes Programm
Woche 2–12 Der gesamte Stoff, Woche für Woche
Weihnachten Übungsmaterial für die Ferien
1. Woche im Januar Probeklausur unter Realbedingungen
2. Woche im Januar Klausurwerkstatt: Besprechung + Training
danach Prüfung
Programmieren – D. Straub

Gruppeneinteilung Praktikum

14-tägig im Wechsel. Achtung: Oktobertermine unregelmäßig aufgrund Dienstbesprechung am 5.10. und Fakultätsklausur am 20.10. Genaue Termine in Moodle (https://moodle.hm.edu/course/view.php?id=25469).

Studiengruppe Gruppe Tag Uhrzeit Raum Start
LRB1A 1 Mo 16:00 B358 19.10.
LRB1A 2 Do 11:45 B351 22.10.
LRB1A 3 Mo 16:00 B356 26.10.
LRB1B 1 Di 11:45 B355 13.10.
LRB1B 2 Di 13:30 B355 13.10.
LRB1B 3 Di 11:45 B355 27.10. ⚠️
Programmieren – D. Straub

Matrix-Chat

https://matrix.hm.edu, Element-App (Desktop/Mobil)

Ein gemeinsamer Raum für alle: https://matrix.hm.edu/#/room/%23fk03-lrb-programmiere-ws26%3Ahm.edu

Bitte mit Foto im Profil 📷

Programmieren – D. Straub

Jetzt Sie: Ihr erstes Programm

Kein Installieren nötig – im Browser, auch am Handy:

Mini-Aufgabe (3 min):

  1. Führen Sie aus:
print("Hallo LRB!")
  1. Ändern Sie den Text und führen Sie erneut aus
  2. Erst aufschreiben, was Sie erwarten – dann ausführen: print(3 * 7) und print(3 * 7.0)
Programmieren – D. Straub

Was ist da gerade passiert?

  • Sie haben dem Computer eine Anweisung gegeben – er hat sie ausgeführt
  • print(...) ist eine Funktion: Sie geben etwas hinein, sie tut etwas
  • 3 * 7 und 3 * 7.0 – warum sieht das Ergebnis unterschiedlich aus?
  • Merken Sie sich schon heute: Ganzzahlen und Kommazahlen sind für den Computer zwei verschiedene Dinge – und Kommazahlen sind nicht immer exakt. Das steckt hinter der hängenden Batterie-Schleife von vorhin (die volle Erklärung bekommen Sie in Woche 11!)
Programmieren – D. Straub

So arbeiten wir in diesem Kurs

Jede Woche:

  • Kurze Erklärungen im Wechsel mit Mini-Aufgaben – alle machen mit, am Gerät oder auf Papier
  • Größere Aufgaben: erst nachdenken (Papier), dann entwickeln wir die Lösung gemeinsam live
  • Kein Laptop dabei? Kein Problem: zu zweit arbeiten, Vorhersagen und Fehlersuche gehen auf Papier

Alle Folien zum Mitlesen und als PDF: https://davidstraub.de/teaching-materials/

Programmieren – D. Straub

Online-Ressourcen

Programmieren – D. Straub

🗳️ Zum Schluss: Was gibt das aus?

print(10 / 2)

A) 5

B) 5.0

C) 10 / 2

D) Fehlermeldung

Programmieren – D. Straub

Bis nächste Woche!

Nächste Woche: Erste Programme – Variablen, Zahlen, Texte

Fragen?

  • Jederzeit: im Matrix-Chat
  • Sprechstunde: nach Vereinbarung, online per Zoom oder in Präsenz in B 374
Programmieren – D. Straub